package com.zmn.oms.model.es;

import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.ToString;

import java.util.Date;

@Data
@ToString
@AllArgsConstructor
@NoArgsConstructor
public class EsVoucherOrder {

    /**
     * 虚拟金额标志 1.真实金额 2.虚拟金额(优惠、积分)
     */
    private Integer virtual;

    /**
     * 资金方向 1.进 2.出
     */
    private Integer inOut;

    /**
     * 交易类型：1实时到账，3 退款
     */
    private Integer tradeType;

    /**
     * 是否现金交易: 1否，2是
     */
    private Integer cash;

    /**
     * 金额类型
     * <p>
     * 工单金额类： 10预付款， 11定金， 12工程师收款， 13渠道费， 14退款费
     * 优惠折扣类： 21 优惠券， 22会员费， 23活动优惠， 24积分
     */
    private Integer amountType;

    /**
     * 是否支付 1 没有支付 2 有支付
     */
    private Integer payFlag;

    /**
     * 支付id
     */
    private Integer payId;

    /**
     * 支付渠道id
     */
    private Integer payChannelId;

    /**
     * 商家流水号
     */
    private String payOutTradeNo;

    /**
     * 支付时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "Asia/Shanghai")
    private Date payTime;

    /**
     * 金额
     */
    private Integer amount;

    /**
     * 代付 1: 非代付  2：代付
     */
    private Integer agentType;
}